package com.sti.platform.dao;

import java.util.List;

import javax.servlet.http.HttpServletRequest;

import com.aisino.tools.enums.PageEnum;
import com.aisino.tools.enums.QlEnum;
import com.aisino.tools.util.page.Page;
import com.sti.platform.model.Notice;


public interface NoticeDao {
	
	/**
	 * 获取所有列表
	 * @return
	 */
	public List<Notice> getAllNotice();
	public List<Notice> getNoticeByParam(String sql, String[] params, Object[] values);
	
	/**
	 * 获取 一共的条数，用于分页，不建议用 getAllNotice().size();增加开销。
	 * @return
	 */
	public Integer getAllNoticeNum();
	public Integer getNoticeNum(String sql,String[] params, Object[] values);
	
	/**
	 * 分页获取列表
	 * @return
	 */
	public List<Notice> getNoticeByPage(String qlString, String[] params, Object[] values, Integer top,
			Page pageModel, QlEnum qlType, PageEnum pageType);
	/**
	 * 根据ID获取实体
	 * @return
	 */
	public Notice getNoticeByID(String id);

	/**
	 * 保存
	 * @param notice
	 * @return
	 */
	public String saveNotice(Notice notice);
	/**
	 * 根据ID删除
	 * @param id
	 */
	public Integer delNotice(String id);
	/**
	 * 根据String [] ID集合，批量删除
	 * @param  ids
	 */
	public Integer delNotice(String ids[]);
	/**
	 * 更新
	 * @param notice
	 */
	public String updateNotice(Notice notice);
	
}
